#ifndef __SVMDATA_H__
#define __SVMDATA_H__

/// Includes system
#include <cstdlib>
#include <cstdio>
#include <cstring>

class svmData {
public:
	svmData():data(NULL),transposeData(NULL),labels(NULL),nPoints(-1),nDimension(-1),max_line_len(maxLen),line(NULL) {}
	float* data;
	float* transposeData;
	float* labels;
	int nPoints;
	int nDimension;
	virtual void readSvm(char *) = 0;
	virtual void cleanData() = 0;
protected:
	int max_line_len;
	static const int maxLen = 1024;
	char *line;
	char *readline(FILE*);
	void exitInputError(int);
};

#endif